package cn.mw.cmdb.link.entity;

import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;

import java.util.List;

/**
 * @description 线路导入DTO
 */
@Getter
@Setter
@Schema(name = "MwNetWorkLinkImportDto", description = "线路导入DTO")
public class MwNetWorkLinkImportDto {

    private String linkId;

    @ExcelProperty(value = {"线路名称(*)"},order = 1)
    private String linkName;

    @ExcelProperty(value = {"线路分组"},order = 2)
    private String linkGroup;

    @ExcelProperty(value = {"机构(*)"},order = 3)
    private String org;

    @ExcelProperty(value = {"负责人(*)"},order = 4)
    private String principal;

    @ExcelProperty(value = {"用户组"},order = 5)
    private String group;

    @ExcelProperty(value = {"源设备-名称"},order = 6)
    private String sourceDeviceAsset;

    private String sourceDeviceHostId;

    private Integer sourceDeviceServerId;

    @ExcelProperty(value = {"源设备-IP"},order = 7)
    private String sourceDeviceIp;

    @ExcelProperty(value = {"源设备-端口"},order = 8)
    private String sourceDevicePort;

    @ExcelProperty(value = {"目标设备-名称"},order = 9)
    private String targetDeviceAsset;

    private String targetDeviceHostId;

    private Integer targetDeviceServerId;

    @ExcelProperty(value = {"目标设备-IP"},order = 10)
    private String targetDeviceIp;

    @ExcelProperty(value = {"目标设备-端口"},order = 11)
    private String targetDevicePort;

    @ExcelProperty(value = {"取数端口(*)"},order = 12)
    private String takeValuePort;

    @ExcelProperty(value = {"带宽单位(*)"},order = 13)
    private String bandWidthUnit;

    @ExcelProperty(value = {"上行带宽(*)"},order = 14)
    private Double upBandWidth;

    @ExcelProperty(value = {"下行带宽(*)"},order = 15)
    private Double downBandWidth;

    @ExcelProperty(value = {"启动检测(*)"},order = 16)
    private String enableDetection;

    @ExcelProperty(value = {"检测方式"},order = 17)
    private String detectionWay;

    @ExcelProperty(value = {"目标IP"},order = 18)
    private String detectionTargetIp;

    private String detectionTargetIpId;

    @ExcelProperty(value = {"监控服务器"},order = 19)
    private String monitorServer;

    @ExcelProperty(value = {"代理类型"})
    private String proxyType;

    @ExcelProperty(value = {"轮询引擎"})
    private String pollingEngine;

    @ExcelProperty(value = {"描述"},order = 20)
    private String describe;

    private List<LinkLabelDto> associationData;

    @ExcelProperty(value = {"导入结果"},order = 101)
    private String importResult;

    @ExcelProperty(value = {"错误信息"},order = 102)
    private String errorMessage;
}
